Kod przedmiotu 02 03 5876 00
Liczba uzyskiwanych punktów ECTS 4
Nazwa przedmiotu w języku prowadzenia
Technologie informatyczne II
Nazwa przedmiotu w języku polskim Technologie informatyczne II
Nazwa przedmiotu w języku angielskim
Information Technologies II
Język prowadzenia zajęć polski
Formy zajęć
Wykład Ćwiczenia Laboratorium Projekt Seminarium Inne Suma godzin w semestrze
Godziny kontaktowe 15 45 0 60
Czy e-learning Nie Nie Nie Nie Nie Nie
Kryteria oceny (waga) 0,50 0,50 0,00
Jednostka prowadząca Instytut Automatyki
Kierownik przedmiotu dr inż. Rafał Nowak
Realizatorzy przedmiotu
Wymagania wstępne
brak
Przedmiotowe efekty uczenia się
  1. Zna podstawowe pojęcia związane z działaniem sieci komputerowych, usług sieciowych; jest świadomy zagrożeń w sieci, zna metody ochrony danych i zasady bezpiecznego korzystania z sieci. Zna pojęcia związane z programowaniem obiektowym, wybrane wzorce projektowe i zagadnienia związane z jakością oprogramowania.
  2. Potrafi zaplanować proste obliczenia numeryczne, zaimplementować i ocenić ich dokładność.
  3. Potrafi przeanalizować podany problem, dobrać odpowiedni wzorzec projektowy i zaproponować zbiór klas potrzebnych do jego rozwiązania, a następnie zapisać problem w postaci programu w C++ wraz z testami jednostkowymi, skorzystać z dostępnych narzędzi do analizy statycznej i dynamicznej kodu.
  4. Potrafi skorzystać z wybranego systemu kontroli wersji do śledzenia zmian lokalnych oraz pracy grupowej.
Przypisane kierunkowe efekty uczenia się
  1. Student zna i rozumie w stopniu zaawansowanym – fakty, teorie, metody oraz złożone zależności między nimi w zakresie dyscyplin naukowych związanych z kierunkiem studiów, w szczególności: Automatyka, Elektronika, Elektrotechnika, Informatyka i telekomunikacja, z uwzględnieniem teoretycznych podstaw projektowania układów sterowania i regulacji oraz programowania układów automatyki i robotyki. Zna i rozumie zasady działania urządzeń i podstawy technologii (także informatycznych) stosowanych w układach automatyki i robotyki.
  2. Zdolność do planowania i wykonywania eksperymentów, zwłaszcza z zakresu prototypowania nowych algorytmów sterowania i identyfikacji, krytycznej analizy danych, interpretacji, prezentacji i dyskusji wyników, sporządzania dokumentacji i komunkacji z otoczeniem z użyciem specjalistycznej terminologii i z wykorzystaniem odpowiednich narzędzi informatycznych.
Treści programowe Sieci komputerowe i podstawowe usługi; Ochrona danych i bezpieczeństwo w sieci; Obliczenia numeryczne dotyczące zagadnień inżynierskich; Programowanie obiektowe; Wzorce projektowe; Zarządzanie jakością oprogramowania: metryki oprogramowania, testowanie aplikacji; Praca grupowa.
Metody weryfikacji przedmiotowych efektów uczenia się
1. Sprawdzian pisemny (test wielokrotnego wyboru z pytaniami otwartymi)
3. Zaliczenie w postaci kolokwium laboratoryjnego związanego z przedstawieniem algorytmu rozwiązania zadanego problemu oraz z opracowaniem oprogramowania realizującego zadaną funkcjonalność i oceną jego jakości przy pomocy dostępnych narzędzi.
2, 4. Obserwacja aktywności na zajęciach


 
Formy i warunki zaliczenia przedmiotu Kolokwium zaliczeniowe, obecność na zajęciach laboratoryjnych. Warunkiem zaliczenia laboratorium jest zaliczenie przedmiotowych efektów kształcenia nr 2-4. Na ocenę końcową składają się: zaliczenie wykładu (sprawdzian pisemny zaliczony na co najmniej 60%) - waga 50%, zaliczenie laboratorium (obserwacja aktywności na zajęciach, osiągnięcie wymaganych w instrukcji efektów, sprawdzian praktyczny) - waga 50%.
Szczegółowe treści przedmiotu Wykład: - Sieci lokalne i dostępowe - Sieć Internet - Usługi internetowe: HTTP i DNS - E-usługi w polskiej administracji i gospodarce - Phishing i metody obrony - Ochrona danych osobowych - Przykładowe obliczenia numeryczne dotyczące zagadnień inżynierskich - Programowanie obiektowe w C++: - podstawowe pojęcia z programowania obiektowego - podstawy programowania obiektowego w C++ - algorytmy i struktury danych zaimplementowane w bibliotekach standardowych i innych - podstawowe wzorce projektowe w programowaniu obiektowym - Zarządzanie jakością oprogramowania - wprowadzenie - Testowanie aplikacji: testy jednostkowe na przykładzie biblioteki gmock - Narzędzia do analizy pokrycia kodu, analizy statycznej i dynamicznej - Kontrola wersji Laboratorium: - Zabezpieczanie danych - Podstawy sieci i bezpieczeństwa w Internecie - Praktyczne wykorzystanie wirtualizacji oraz wolnego oprogramowania - Implementacja algorytmów dotyczących wybranych zagadnień inżynierskich w języku programowania C - Zdobywanie umiejętności samodzielnego wykonania obliczeń inżynierskich przy użyciu własnych programów i oprogramowania wspomagającego w różnych środowiskach obliczeniowych - Proste programy obiektowe, użycie struktur danych dostępnych w bibliotekach standardowych - Tworzenie testów jednostkowych z wykorzystaniem dublerów - Kontrola poprawności kodu i działania aplikacji przy pomocy narzędzi do analizy statycznej i dynamicznej - Zastosowanie systemu kontroli wersji i praca grupowa.
Literatura podstawowa
  1. Russel B.: Podstawy sieci komputerowych, Wydawnictwa Komunikacji i Łączności, 2009
  2. Gajda W.: Git. Rozproszony system kontroli wersji, Helion, 2013
  3. Gamma E. i in.: Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku, Helion, 2010
  4. Prata S.: Język C++. Szkoła programowania. Wydanie VI, Helion 2013
  5. Pawlak R.: Testowanie oprogramowania. Podręcznik dla początkujących, Helion, 2014
  6. Zmitrowicz K.: Jakość projektów informatycznych. Rozwój i testowanie oprogramowania, Helion, 2015
Literatura uzupełniająca
  1. Szmit M. i in.: 13 najpopularniejszych sieciowych ataków na Twój komputer. Wykrywanie, usuwanie skutków i zapobieganie, Helion, 2008
  2. Zalewski M.: Cisza w sieci : praktyczny przewodnik po pasywnym rozpoznawaniu i atakach pośrednich, Helion, 2005
  3. Bell P., Brent B.: GitHub. Przyjazny przewodnik, Helion, 2015
  4. Freeman E.: Wzorce projektowe. Rusz głową!, Helion 2010
  5. Matlak M.: Język C/C++ i obliczenia numeryczne. Krótkie wprowadzenie, Helion 2016
  6. Martin R.C.: Czysty kod. Podręcznik dobrego programisty, Helion, 2014
  7. Rajani R.: Testowanie kodu w praktyce, Helion, 2018
  8. Myers G.J. i in.: Sztuka testowania oprogramowania, Helion, 2005
Przeciętne obciążenie godzinowe studenta pracą własną
41
Uwagi
 
Data aktualizacja karty 2021-01-04 13:12:54
Przedmiot archiwalny tak/nie nie